package layui.dao;

import layui.entity.Product;

import java.util.List;

/**
 * @Author zqx
 * @Date 2023-11-15
 */
public interface ProductDao {

    /**
     * 添加商品
     *
     * @param p
     * @return
     */
    int add(Product p);

    /**
     * 删除商品
     *
     * @param productId 商品编号
     * @return
     */
    int delete(String productId);

    /**
     * 修改商品
     *
     * @param p
     * @return
     */
    int update(Product p);

    /**
     * 查询所有商品
     *
     * @return
     */
    List<Product> selectAll();

    /**
     * 动态条件 + 分页查询
     *
     * @param product 查询条件（商品名称、商品类型）
     * @param page 当前页
     * @param limit 每页显示记录数
     * @return
     */
    List<Product> selectByPage(Product product, Integer page, Integer limit);

    /**
     * 动态条件 + 分页查询 - 总记录数
     *
     * @param product
     * @return
     */
    Long selectByPageCount(Product product);
}
